// license-header java merge-point
/**
 * This is only generated once! It will never be overwritten.
 * You can (and have to!) safely modify it by hand.
 */
package com.systemsjr.jrtim.course;
/**
 * @see com.systemsjr.jrtim.course.Course
 */
public class CourseDaoImpl
    extends com.systemsjr.jrtim.course.CourseDaoBase
{
    /**
     * @see com.systemsjr.jrtim.course.CourseDao#toCourseVO(com.systemsjr.jrtim.course.Course, com.systemsjr.jrtim.course.vo.CourseVO)
     */
    public void toCourseVO(
        com.systemsjr.jrtim.course.Course source,
        com.systemsjr.jrtim.course.vo.CourseVO target)
    {
        // @todo verify behavior of toCourseVO
        super.toCourseVO(source, target);
    }


    /**
     * @see com.systemsjr.jrtim.course.CourseDao#toCourseVO(com.systemsjr.jrtim.course.Course)
     */
    public com.systemsjr.jrtim.course.vo.CourseVO toCourseVO(final com.systemsjr.jrtim.course.Course entity)
    {
        // @todo verify behavior of toCourseVO
        return super.toCourseVO(entity);
    }


    /**
     * Retrieves the entity object that is associated with the specified value object
     * from the object store. If no such entity object exists in the object store,
     * a new, blank entity is created
     */
    private com.systemsjr.jrtim.course.Course loadCourseFromCourseVO(com.systemsjr.jrtim.course.vo.CourseVO courseVO)
    {
        // @todo implement loadCourseFromCourseVO
        throw new java.lang.UnsupportedOperationException("com.systemsjr.jrtim.course.loadCourseFromCourseVO(com.systemsjr.jrtim.course.vo.CourseVO) not yet implemented.");

        /* A typical implementation looks like this:
        com.systemsjr.jrtim.course.Course course = this.load(courseVO.getId());
        if (course == null)
        {
            course = com.systemsjr.jrtim.course.Course.Factory.newInstance();
        }
        return course;
        */
    }

    
    /**
     * @see com.systemsjr.jrtim.course.CourseDao#courseVOToEntity(com.systemsjr.jrtim.course.vo.CourseVO)
     */
    public com.systemsjr.jrtim.course.Course courseVOToEntity(com.systemsjr.jrtim.course.vo.CourseVO courseVO)
    {
        // @todo verify behavior of courseVOToEntity
        com.systemsjr.jrtim.course.Course entity = this.loadCourseFromCourseVO(courseVO);
        this.courseVOToEntity(courseVO, entity, true);
        return entity;
    }


    /**
     * @see com.systemsjr.jrtim.course.CourseDao#courseVOToEntity(com.systemsjr.jrtim.course.vo.CourseVO, com.systemsjr.jrtim.course.Course)
     */
    public void courseVOToEntity(
        com.systemsjr.jrtim.course.vo.CourseVO source,
        com.systemsjr.jrtim.course.Course target,
        boolean copyIfNull)
    {
        // @todo verify behavior of courseVOToEntity
        super.courseVOToEntity(source, target, copyIfNull);
    }

}